﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class IGeoObjectImpl.Changing
   </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class IGeoObjectImpl.Changing
   ">
    <meta name="generator" content="docfx 2.56.4.0">
    
    <link rel="shortcut icon" href="../favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    
    
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../logo.svg" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing">
  
  
  <h1 id="CADability_GeoObject_IGeoObjectImpl_Changing" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing" class="text-break">Class IGeoObjectImpl.Changing
  </h1>
  <div class="markdown level0 summary"><p>Helper class to wrap any changing of this GeoObject. Usually used in this way:</p>
<pre><code>    using (new Changing(this,...))
    {
        // ... make the change here ...
    }</code></pre>
<p>This will call <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_FireWillChange_CADability_GeoObject_GeoObjectChange_">FireWillChange(GeoObjectChange)</a> before the GeoObject is changed
and <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_FireDidChange_CADability_GeoObject_GeoObjectChange_">FireDidChange(GeoObjectChange)</a> after the GeoObject was changed with the appropriate parameters.
Changig takes nested changes into account and raises the events only at the outermost level.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">IGeoObjectImpl.Changing</span></div>
      <div class="level2"><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.ChangingAttribute.html">IGeoObjectImpl.ChangingAttribute</a></div>
  </div>
  <div classs="implements">
    <h5>Implements</h5>
    <div><span class="xref">System.IDisposable</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="CADability.GeoObject.html">CADability.GeoObject</a></h6>
  <h6><strong>Assembly</strong>: CADability.dll</h6>
  <h5 id="CADability_GeoObject_IGeoObjectImpl_Changing_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected class Changing : IDisposable</code></pre>
  </div>
  <h3 id="constructors">Constructors
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.%23ctor(CADability.GeoObject.IGeoObjectImpl)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L734">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor(CADability.GeoObject.IGeoObjectImpl)">Changing(IGeoObjectImpl)</h4>
  <div class="markdown level1 summary"><p>Changing geometrical aspects of an GeoObject. A <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_Clone">Clone()</a> of this GeoObject is
made and saved and <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_CopyGeometry_CADability_GeoObject_IGeoObject_">CopyGeometry(IGeoObject)</a> might be called with that clone later
when there is an undo.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Changing(IGeoObjectImpl geoObject)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html">IGeoObjectImpl</a></td>
        <td><span class="parametername">geoObject</span></td>
        <td><p>the GeoObject</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Boolean_.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.%23ctor(CADability.GeoObject.IGeoObjectImpl%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L769">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Boolean_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor(CADability.GeoObject.IGeoObjectImpl,System.Boolean)">Changing(IGeoObjectImpl, Boolean)</h4>
  <div class="markdown level1 summary"><p>Changing geometrical aspects of an GeoObject. A <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_Clone">Clone()</a> of this GeoObject is
made and saved and <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_CopyGeometry_CADability_GeoObject_IGeoObject_">CopyGeometry(IGeoObject)</a> might be called with that clone later
when there is an undo.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Changing(IGeoObjectImpl geoObject, bool UndoNecessary)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html">IGeoObjectImpl</a></td>
        <td><span class="parametername">geoObject</span></td>
        <td><p>the GeoObject</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">UndoNecessary</span></td>
        <td><p>true, if undo is required</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Boolean_System_Boolean_.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.%23ctor(CADability.GeoObject.IGeoObjectImpl%2CSystem.Boolean%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L750">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Boolean_System_Boolean_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor(CADability.GeoObject.IGeoObjectImpl,System.Boolean,System.Boolean)">Changing(IGeoObjectImpl, Boolean, Boolean)</h4>
  <div class="markdown level1 summary"><p>Changing geometrical aspects of an GeoObject. A <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_Clone">Clone()</a> of this GeoObject is
made and saved and <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_CopyGeometry_CADability_GeoObject_IGeoObject_">CopyGeometry(IGeoObject)</a> might be called with that clone later
when there is an undo.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Changing(IGeoObjectImpl geoObject, bool UndoNecessary, bool onlyAttribute)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html">IGeoObjectImpl</a></td>
        <td><span class="parametername">geoObject</span></td>
        <td><p>the GeoObject</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">UndoNecessary</span></td>
        <td></td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">onlyAttribute</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Boolean_System_Boolean_System_String_System_Object___.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.%23ctor(CADability.GeoObject.IGeoObjectImpl%2CSystem.Boolean%2CSystem.Boolean%2CSystem.String%2CSystem.Object%5B%5D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L716">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Boolean_System_Boolean_System_String_System_Object___" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor(CADability.GeoObject.IGeoObjectImpl,System.Boolean,System.Boolean,System.String,System.Object[])">Changing(IGeoObjectImpl, Boolean, Boolean, String, Object[])</h4>
  <div class="markdown level1 summary"><p>Changing a GeoObject with a specification on how to undo that change.
Undo might be performed later vie reflection. So we need the name of the method
here and the parameters for that method.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Changing(IGeoObjectImpl geoObject, bool noUndo, bool onlyAttribute, string MethodOrPropertyName, params object[] Parameters)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html">IGeoObjectImpl</a></td>
        <td><span class="parametername">geoObject</span></td>
        <td><p>the GeoObject</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">noUndo</span></td>
        <td><p>true if no undo is required, false otherwise</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">onlyAttribute</span></td>
        <td><p>true if only an attribute is changed not the geometry</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">MethodOrPropertyName</span></td>
        <td><p>name of a public method that might be called later by undo</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Object</span>[]</td>
        <td><span class="parametername">Parameters</span></td>
        <td><p>parameters for the method</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_String_.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.%23ctor(CADability.GeoObject.IGeoObjectImpl%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L692">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_String_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor(CADability.GeoObject.IGeoObjectImpl,System.String)">Changing(IGeoObjectImpl, String)</h4>
  <div class="markdown level1 summary"><p>Changing a property, that has public get and set methods, and has only
one property with this name. On construction the value of that property
will be requested by a reflection call to &quot;get_PropertyName&quot;</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Changing(IGeoObjectImpl geoObject, string PropertyName)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html">IGeoObjectImpl</a></td>
        <td><span class="parametername">geoObject</span></td>
        <td><p>The GeoObject</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">PropertyName</span></td>
        <td><p>The Name of the property</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_String_System_Object___.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.%23ctor(CADability.GeoObject.IGeoObjectImpl%2CSystem.String%2CSystem.Object%5B%5D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L788">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_String_System_Object___" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor(CADability.GeoObject.IGeoObjectImpl,System.String,System.Object[])">Changing(IGeoObjectImpl, String, Object[])</h4>
  <div class="markdown level1 summary"><p>Changing a GeoObject with a specification on how to undo that change.
Undo might be performed later vie reflection. So we need the name of the method
here and the parameters for that method.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Changing(IGeoObjectImpl geoObject, string MethodOrPropertyName, params object[] Parameters)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html">IGeoObjectImpl</a></td>
        <td><span class="parametername">geoObject</span></td>
        <td><p>the GeoObject</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">MethodOrPropertyName</span></td>
        <td><p>name of a public method that might be called later by undo</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Object</span>[]</td>
        <td><span class="parametername">Parameters</span></td>
        <td><p>parameters for the method</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Type_System_String_System_Object___.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.%23ctor(CADability.GeoObject.IGeoObjectImpl%2CSystem.Type%2CSystem.String%2CSystem.Object%5B%5D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L816">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing__ctor_CADability_GeoObject_IGeoObjectImpl_System_Type_System_String_System_Object___" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.#ctor(CADability.GeoObject.IGeoObjectImpl,System.Type,System.String,System.Object[])">Changing(IGeoObjectImpl, Type, String, Object[])</h4>
  <div class="markdown level1 summary"><p>Changing a GeoObject with a specification on how to undo that change.
Undo might be performed later vie reflection. So we need the name of the method
here and the parameters for that method. The method must be in the given interface.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Changing(IGeoObjectImpl geoObject, Type interfaceForMethod, string MethodOrPropertyName, params object[] Parameters)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html">IGeoObjectImpl</a></td>
        <td><span class="parametername">geoObject</span></td>
        <td><p>the GeoObject</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Type</span></td>
        <td><span class="parametername">interfaceForMethod</span></td>
        <td><p>the type of the interface which contains the method</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">MethodOrPropertyName</span></td>
        <td><p>name of a public method that might be called later by undo</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Object</span>[]</td>
        <td><span class="parametername">Parameters</span></td>
        <td><p>parameters for the method</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing_Dispose.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.Dispose%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L830">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing_Dispose_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.Dispose*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing_Dispose" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.Dispose">Dispose()</h4>
  <div class="markdown level1 summary"><p>Implements IDisposable.Dispose. Calls <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_FireDidChange_CADability_GeoObject_GeoObjectChange_">FireDidChange(GeoObjectChange)</a> when not inside a nested
changing.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual void Dispose()</code></pre>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing_NoUndoNecessary.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing.NoUndoNecessary%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L681">View Source</a>
  </span>
  <a id="CADability_GeoObject_IGeoObjectImpl_Changing_NoUndoNecessary_" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.NoUndoNecessary*"></a>
  <h4 id="CADability_GeoObject_IGeoObjectImpl_Changing_NoUndoNecessary" data-uid="CADability.GeoObject.IGeoObjectImpl.Changing.NoUndoNecessary">NoUndoNecessary()</h4>
  <div class="markdown level1 summary"><p>Sets <a class="xref" href="CADability.GeoObject.GeoObjectChange.html#CADability_GeoObject_GeoObjectChange_NoUndoNecessary">NoUndoNecessary</a> to true for the
parameter of the call to <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_FireWillChange_CADability_GeoObject_GeoObjectChange_">FireWillChange(GeoObjectChange)</a>
and <a class="xref" href="CADability.GeoObject.IGeoObjectImpl.html#CADability_GeoObject_IGeoObjectImpl_FireDidChange_CADability_GeoObject_GeoObjectChange_">FireDidChange(GeoObjectChange)</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public void NoUndoNecessary()</code></pre>
  </div>
  <h3 id="implements">Implements</h3>
  <div>
      <span class="xref">System.IDisposable</span>
  </div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/SOFAgh/CADability/new/master/apiSpec/new?filename=CADability_GeoObject_IGeoObjectImpl_Changing.md&amp;value=---%0Auid%3A%20CADability.GeoObject.IGeoObjectImpl.Changing%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/SOFAgh/CADability/blob/master/CADability/GeoObject.cs/#L653" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
                <h5>In This Article</h5>
                <div></div>
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            
            <span>Generated by <strong>DocFX</strong></span>
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
